Volatile electronic memory devices are incapable of retaining stored data when primary power to the device is removed. However, non-volatile memory devices can retain stored data even when primary power to the device is removed. Several types of non-volatile memory devices exist. Battery-backed random access memory (RAM) can retain data when properly powered by a battery; however, battery lifetimes are limited, and a battery-backed device will lose its data when the battery wears down. Thus, in most industry applications, battery-backed RAM devices are impractical for maintaining variable data over extended periods of time.
A read-only memory (ROM) does not require a battery to retain data when primary power is removed. However, a ROM device cannot be reprogrammed with new data. Therefore, ROM's are impractical for maintaining variable data.
Erasable programmable read-only memory (EPROM) can be reprogrammed with new data, but such a reprogramming must be preceded by an erasure of the entire memory contents, typically by applying an external high voltage and exposing the entire device for lengthy periods to ultraviolet light. Thus, in most industry applications, EPROM's are impractical for maintaining variable data.
Electronically erasable programmable read-only memories (EEPROM) are non-volatile memory devices that require no batteries to retain data; furthermore, these devices are reprogrammable on an addressable basis without requiring erasure of the entire memory contents. Normal 5-volt supply voltage is sufficient to erase an EEPROM storage location.
EEPROMs are useful for numerous applications, including maintaining variable data. One such application is a digital electronic odometer for automobiles that updates an event counter value at discrete mileage distance intervals. The event counter value can be stored in an addressable EEPROM location and periodically updated without requiring erasure of other memory contents. Furthermore, the EEPROM contents will be retained even when power is removed from the circuit.
Nevertheless, using an EEPROM to maintain variable data such as an event counter value raises distinct problems. Specifically, EEPROM storage locations can undergo only a finite number of oxide tunnelling transitions (OTT) which occur when a data bit storage location is reprogrammed with opposite data from what it previously stored. An average EEPROM bit is limited to approximately 10,000 OTT's, but actual limits on OTT's will vary widely between EEPROM bits. Thus, when counting miles using an event counter value stored in a EEPROM, the least significant bit (LSB) of the particular EEPROM storage location will exhaust its limited number of OTT's after approximately 5,000 miles, assuming a resolution of 0.5 miles.
Some EEPROM applications overcome this limitation by relocating the event counter value to a different EEPROM byte storage address once a predefined number of OTT's have occurred. Thus, when the LSB of a particular byte storage address has exhausted its OTT possibilities, the entire byte is no longer used, even though seven of its eight bits remain capable of many more OTT's. This solution is therefore unnecessarily wasteful of memory space, requiring either larger memory capacity (and hence, increased semiconductor chip die area and product cost) or shorter product lifetimes due to more rapid depletion of useable memory space.
Therefore, a need has arisen in the industry for an apparatus and method to maintain variable data in a non-volatile electronic memory device, such that data is retained in the absence of power and such that available EEPROM memory space is efficiently utilized to accurately store the variable data, despite typical OTT limits of EEPROM storage devices.